import Icon from "@ant-design/icons"
import {CustomIconComponentProps} from "@ant-design/icons/lib/components/Icon"
import React from "react"
import {v4 as uuidv4} from "uuid"

interface IconProps extends CustomIconComponentProps {
    onClick: (e: React.MouseEvent) => void
    ref?: any
}

const Yak = () => {
    const id = uuidv4()
    return (
        <svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'>
            <g clipPath={`url(#${id})`}>
                <path
                    d='M16 32C24.8366 32 32 24.8366 32 16C32 7.16344 24.8366 0 16 0C7.16344 0 0 7.16344 0 16C0 24.8366 7.16344 32 16 32Z'
                    fill='#FF7B00'
                />
                <path
                    d='M11.7052 18.7287L10.8851 17.9086L12.5969 16.2096L11.2494 14.8651L10.8804 14.4943L11.7058 13.6683L13.8359 15.7984C13.9445 15.9081 14.0054 16.0562 14.0054 16.2105C14.0054 16.3649 13.9445 16.513 13.8359 16.6227L13.4258 17.0327L11.7181 18.7264L11.7052 18.7287ZM18.7974 18.7287H15.9766V17.577H18.7974V18.7287ZM22.6709 17.5653V16.4135H23.8203V16.5184C23.8203 16.8675 23.8164 17.2161 23.8086 17.5641L22.6709 17.5653Z'
                    fill='white'
                />
                <path
                    d='M28.0015 11.8991C28.0015 11.9577 28.0015 12.0127 27.9962 12.0701C27.9912 12.1709 27.9802 12.2712 27.9634 12.3707C27.8476 13.0891 27.4696 13.7391 26.9024 14.195C26.8992 14.1969 26.896 14.1991 26.8931 14.2014C26.7577 14.2998 26.6195 14.393 26.4754 14.4809C26.4705 14.4843 26.4654 14.4874 26.4601 14.4902C25.7153 14.9449 24.882 15.2354 24.016 15.3426C23.9504 15.3502 23.8842 15.3579 23.8174 15.3631C23.6299 15.3813 23.439 15.3901 23.2474 15.3901C23.0558 15.3901 22.8578 15.3813 22.6668 15.3631C22.661 14.7648 22.6487 14.1678 22.6299 13.5722C22.6299 13.4978 22.6246 13.424 22.6235 13.3508C22.6082 12.9126 22.5887 12.4749 22.5649 12.0379C22.5655 12.0278 22.5655 12.0176 22.5649 12.0075C22.5613 11.9694 22.5499 11.9325 22.5315 11.8991C22.5093 11.8573 22.4774 11.8214 22.4384 11.7945C22.3995 11.7676 22.3547 11.7504 22.3077 11.7444C22.2954 11.7435 22.2831 11.7435 22.2708 11.7444L22.1138 11.7315C21.7353 11.7052 21.3569 11.6794 20.9784 11.6565C19.8255 11.5886 18.6691 11.5442 17.5091 11.5235C17.1266 11.5159 16.7446 11.5118 16.3609 11.5107C16.2484 11.5107 16.1424 11.5107 16.0299 11.5107C15.7563 11.5107 15.4845 11.5107 15.2097 11.5142C14.9695 11.5171 14.7276 11.5206 14.4874 11.5247C14.3263 11.5247 14.1652 11.5312 14.0041 11.5359C12.9995 11.5593 11.9985 11.6015 11.0011 11.6624C10.6277 11.6847 10.2553 11.7098 9.88386 11.738C9.82938 11.7421 9.77548 11.7456 9.72041 11.7509C9.70752 11.7509 9.69463 11.7509 9.68233 11.7509C9.63623 11.7567 9.59217 11.7733 9.55369 11.7994C9.51522 11.8254 9.48343 11.8602 9.46088 11.9008C9.44303 11.9338 9.43132 11.9697 9.42632 12.0069C9.42632 12.0198 9.42632 12.0309 9.42632 12.0438V12.0502C9.40464 12.4761 9.38648 12.9014 9.37242 13.3285C9.37242 13.4117 9.36715 13.4961 9.36481 13.5793C9.34528 14.1721 9.33298 14.7669 9.3279 15.3637C9.32497 15.5301 9.32497 15.6971 9.3238 15.8646C9.3238 15.9759 9.3238 16.0872 9.3238 16.1974C9.3238 17.1484 9.34001 18.0968 9.37242 19.0428C9.38648 19.4724 9.40445 19.9002 9.42632 20.3263C9.42632 20.3375 9.42632 20.3492 9.42632 20.3609C9.4343 20.4271 9.46418 20.4887 9.51121 20.5359C9.55823 20.5832 9.61971 20.6133 9.68585 20.6216H9.69991H9.72041C10.1498 20.6562 10.5781 20.6855 11.0093 20.7112C12.0052 20.7741 13.004 20.8175 14.0058 20.8413C14.4073 20.8518 14.8092 20.8591 15.2115 20.863C15.4054 20.8659 15.601 20.8671 15.7973 20.8682C15.8559 20.8682 15.9186 20.8682 15.9777 20.8682H16.1283C17.7558 20.8682 19.3766 20.821 20.9907 20.7265C21.4178 20.7024 21.8437 20.6732 22.2679 20.6421H22.2685C22.2856 20.6425 22.3027 20.6407 22.3194 20.6368C22.3225 20.6373 22.3257 20.6373 22.3288 20.6368C22.3883 20.6254 22.4429 20.5957 22.4848 20.552C22.5268 20.5082 22.5542 20.4525 22.5631 20.3925C22.5655 20.3782 22.5666 20.3637 22.5667 20.3492V20.3351C22.5885 19.9028 22.6065 19.4695 22.6206 19.0352C22.6303 18.7575 22.6383 18.48 22.6446 18.2027H23.7952C23.7787 18.9303 23.7073 20.5408 23.7055 20.546C23.6732 20.825 23.557 21.0876 23.3721 21.299C23.1873 21.5105 22.9425 21.6608 22.6703 21.73C22.6085 21.7456 22.5457 21.7567 22.4823 21.7634C20.2198 21.9395 17.9333 22.0239 15.6227 22.0165C15.4862 22.0165 15.348 22.0165 15.2126 22.0165C14.8096 22.0122 14.4077 22.0054 14.007 21.996C12.5369 21.9624 11.0766 21.8903 9.62609 21.7798H9.66183C9.65069 21.7798 9.63781 21.7798 9.62609 21.7798C9.58801 21.7798 9.54817 21.7745 9.50892 21.7722C9.50238 21.7721 9.49588 21.7711 9.48959 21.7693C9.43297 21.7637 9.3768 21.7543 9.32145 21.7411C9.04605 21.6716 8.79871 21.5189 8.613 21.304C8.42729 21.0891 8.3122 20.8222 8.28335 20.5396C8.28279 20.5371 8.28279 20.5345 8.28335 20.532C8.28393 20.5216 8.28393 20.5113 8.28335 20.5009C8.28335 20.4681 8.28335 20.4336 8.27808 20.399C8.20426 18.8969 8.1697 17.385 8.17439 15.8634C8.17439 15.6971 8.17439 15.5324 8.17849 15.3661C8.11346 15.3608 8.04784 15.3532 7.98399 15.3456C7.11832 15.2384 6.28548 14.9478 5.54105 14.4932C5.52991 14.4879 5.51937 14.4803 5.50824 14.4738H5.50414C5.37408 14.3942 5.24754 14.3086 5.12452 14.219H5.121C4.54553 13.7658 4.16073 13.1135 4.04247 12.3906C4.02462 12.2875 4.01269 12.1834 4.00674 12.0789C4.00264 12.0203 4.00146 11.9653 4.00146 11.9079C4.00146 11.6778 4.02839 11.4486 4.08172 11.2248C4.16961 10.8557 4.32883 10.5075 4.55039 10.1996C4.57559 10.1638 4.60136 10.1281 4.62948 10.0935C4.63944 10.0795 4.64999 10.0672 4.66112 10.0531C4.69264 10.0223 4.73229 10.0011 4.77543 9.99209C4.81857 9.98306 4.86339 9.98653 4.90462 10.0021C4.94585 10.0177 4.98177 10.0447 5.00817 10.08C5.03457 10.1153 5.05034 10.1574 5.05363 10.2013C5.05425 10.207 5.05425 10.2127 5.05363 10.2183C5.05789 10.573 5.1627 10.9192 5.3559 11.2168C5.54909 11.5143 5.82274 11.7509 6.14504 11.8991C6.2941 11.9679 6.45174 12.0164 6.61371 12.0432C6.71759 12.0614 6.82286 12.0704 6.92831 12.0701H8.27573C8.27573 12.0116 8.28101 11.953 8.28452 11.8991C8.28492 11.8887 8.2859 11.8783 8.28745 11.868C8.31292 11.553 8.44601 11.2563 8.66438 11.0278C8.88275 10.7993 9.1731 10.6529 9.48666 10.6132C9.49425 10.6123 9.50192 10.6123 9.50951 10.6132C9.5132 10.6126 9.51695 10.6126 9.52064 10.6132C9.54407 10.6132 9.56692 10.6091 9.59153 10.6079C9.59952 10.6073 9.60755 10.6073 9.61555 10.6079C9.62158 10.6073 9.62767 10.6073 9.63371 10.6079C11.0788 10.4966 12.5359 10.4228 14.0052 10.3864C14.2786 10.3798 14.552 10.3747 14.8254 10.3712C14.9531 10.3712 15.0814 10.3677 15.2091 10.3659C15.5938 10.3636 15.9785 10.3636 16.3632 10.3659C16.6315 10.3659 16.9004 10.37 17.1676 10.3736C18.9122 10.3962 20.643 10.4733 22.3599 10.605C22.3628 10.6044 22.3657 10.6044 22.3686 10.605C22.3751 10.6041 22.3816 10.6041 22.388 10.605H22.4073C22.4325 10.605 22.4571 10.6085 22.4811 10.6114H22.4952C22.795 10.6477 23.0749 10.7806 23.2926 10.9899C23.5103 11.1993 23.654 11.4738 23.702 11.7719C23.7026 11.7748 23.7026 11.7778 23.702 11.7807C23.702 11.8089 23.702 11.8393 23.7061 11.8663C23.7061 11.878 23.7061 11.8909 23.7061 11.9038C23.709 11.9623 23.7114 12.0174 23.7137 12.0748H25.0219C25.0383 12.0748 25.0535 12.0748 25.0705 12.0748C25.0875 12.0748 25.1022 12.0748 25.1191 12.0748C25.2175 12.0729 25.3155 12.0627 25.4121 12.0444C25.5644 12.0163 25.7127 11.969 25.8532 11.9038C26.1767 11.7542 26.451 11.5159 26.6442 11.2164C26.8375 10.917 26.9416 10.5688 26.9446 10.2124C26.944 10.2074 26.944 10.2023 26.9446 10.1972C26.9475 10.1529 26.9631 10.1104 26.9895 10.0747C27.0159 10.039 27.0521 10.0117 27.0936 9.99606C27.1352 9.98042 27.1804 9.97709 27.2238 9.98648C27.2672 9.99587 27.3069 10.0176 27.3383 10.049C27.349 10.0598 27.3585 10.0718 27.3664 10.0847C27.3957 10.1205 27.425 10.1574 27.4478 10.1949C27.8045 10.6919 27.9979 11.2874 28.0015 11.8991Z'
                    fill='white'
                />
            </g>
            <defs>
                <clipPath id={id}>
                    <rect width='32' height='32' fill='white' />
                </clipPath>
            </defs>
        </svg>
    )
}
/**
 * @description Name: Yak 牛牛
 */
export const YakIcon = (props: Partial<IconProps>) => {
    return <Icon component={Yak} {...props} />
}

const OpenAI = () => {
    const id = uuidv4()
    return (
        <svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'>
            <g clipPath={`url(#${id})`}>
                <path
                    d='M16 32C24.8366 32 32 24.8366 32 16C32 7.16344 24.8366 0 16 0C7.16344 0 0 7.16344 0 16C0 24.8366 7.16344 32 16 32Z'
                    fill='#0EA982'
                />
                <path
                    d='M24.6809 14.185C24.9083 13.5122 24.9874 12.798 24.9126 12.0917C24.8378 11.3854 24.6109 10.7037 24.2476 10.0934C23.7052 9.16403 22.8818 8.43079 21.8961 7.99925C20.9059 7.56438 19.8043 7.45101 18.7463 7.67509C18.2676 7.1434 17.6813 6.71959 17.0264 6.43177C16.3685 6.14255 15.6569 5.99545 14.9382 6.00011C13.8582 5.99684 12.8045 6.33294 11.9259 6.96093C11.0531 7.58453 10.4019 8.47019 10.0668 9.48924C9.36319 9.63097 8.69753 9.92009 8.11363 10.3376C7.53281 10.7529 7.04754 11.2876 6.69039 11.9059C6.14706 12.8277 5.9148 13.8999 6.02795 14.9639C6.1411 16.0279 6.59365 17.0272 7.31868 17.8142C7.09118 18.4871 7.01211 19.2014 7.08691 19.9079C7.16171 20.6143 7.3886 21.2962 7.75199 21.9066C8.29425 22.8358 9.11728 23.569 10.1027 24.0008C11.0929 24.4356 12.1945 24.5489 13.2525 24.3249C13.7314 24.8567 14.318 25.2805 14.9732 25.5682C15.6309 25.8573 16.3422 26.0044 17.0606 25.9999C18.1412 26.0033 19.1955 25.6669 20.0745 25.0382C20.9478 24.4146 21.5993 23.5286 21.9344 22.5091C22.6378 22.3673 23.3031 22.0782 23.8868 21.6608C24.468 21.2453 24.9535 20.7103 25.3109 20.0916C25.8536 19.1698 26.0853 18.0979 25.9719 17.0342C25.8584 15.9705 25.4058 14.9716 24.6809 14.185ZM17.0622 24.6924C16.176 24.6943 15.3167 24.3879 14.6315 23.8258C14.6615 23.8091 14.7157 23.7791 14.7507 23.7583L18.7871 21.4583C18.8875 21.4016 18.9711 21.3192 19.0294 21.2197C19.0877 21.1202 19.1185 21.007 19.1188 20.8916V15.2767L20.8245 16.25C20.8334 16.2543 20.8411 16.2607 20.8469 16.2687C20.8527 16.2767 20.8565 16.286 20.8578 16.2958V20.9458C20.8564 21.4386 20.7573 21.9263 20.5662 22.3806C20.3751 22.8349 20.0959 23.2468 19.7446 23.5924C19.0293 24.2967 18.066 24.692 17.0622 24.6932V24.6924ZM8.90191 21.2533C8.45716 20.4965 8.29646 19.6061 8.44861 18.7416C8.47861 18.7591 8.5311 18.7916 8.5686 18.8125L12.6042 21.1124C12.7049 21.1704 12.8192 21.2009 12.9354 21.2009C13.0517 21.2009 13.1659 21.1704 13.2666 21.1124L18.1938 18.305V20.25C18.1945 20.2599 18.1926 20.2699 18.1884 20.2789C18.1841 20.2879 18.1777 20.2957 18.1697 20.3016L14.0899 22.6258C13.215 23.1218 12.1807 23.2555 11.2084 22.9983C10.2396 22.7439 9.41058 22.117 8.90191 21.2541V21.2533ZM7.84031 12.56C8.28642 11.7977 8.98592 11.2161 9.81685 10.9167L9.81519 11.0534V15.6533C9.81405 15.7689 9.84421 15.8825 9.90245 15.9823C9.96069 16.0821 10.0449 16.1642 10.146 16.22L15.0732 19.0275L13.3675 19.9991C13.359 20.0045 13.3493 20.0078 13.3393 20.0087C13.3293 20.0095 13.3192 20.008 13.31 20.0041L9.23023 17.6775C8.80065 17.4331 8.4235 17.1063 8.12037 16.716C7.81724 16.3256 7.59408 15.8793 7.46367 15.4025C7.33465 14.9274 7.3015 14.4314 7.36616 13.9434C7.43083 13.4554 7.59201 12.9851 7.84031 12.56ZM21.8544 15.7775L16.9272 12.9709L18.633 11.9992C18.6415 11.9936 18.6513 11.9902 18.6615 11.9893C18.6717 11.9885 18.6819 11.9901 18.6913 11.9942L22.771 14.3184C23.3942 14.6727 23.9035 15.1974 24.2393 15.8308C24.5729 16.4614 24.7175 17.1748 24.6557 17.8855C24.5939 18.5962 24.3284 19.274 23.891 19.8375C23.4511 20.4057 22.859 20.8374 22.1836 21.0825V16.3442C22.1849 16.2288 22.1551 16.1152 22.0971 16.0154C22.0392 15.9157 21.9553 15.8335 21.8544 15.7775ZM23.5526 13.2567C23.5129 13.2326 23.4729 13.209 23.4326 13.1859L19.3971 10.8859C19.2962 10.8278 19.1818 10.7971 19.0654 10.7971C18.949 10.7971 18.8346 10.8278 18.7338 10.8859L13.8066 13.6934V11.7492C13.8061 11.7392 13.8082 11.7292 13.8125 11.7202C13.8169 11.7112 13.8234 11.7034 13.8316 11.6975L17.9105 9.37507C18.5369 9.01902 19.2507 8.84638 19.9706 8.87688C20.6904 8.90739 21.3871 9.1398 21.9811 9.54757C22.5713 9.95263 23.0336 10.5178 23.3135 11.1767C23.591 11.8334 23.6743 12.555 23.5526 13.2567ZM12.8792 16.7208L11.1734 15.75C11.1644 15.7456 11.1567 15.7391 11.1508 15.7309C11.145 15.7228 11.1413 15.7133 11.1401 15.7033V11.0542C11.1401 10.3426 11.3468 9.6459 11.7342 9.04424C12.1236 8.44198 12.6762 7.96281 13.3275 7.66259C13.9816 7.36099 14.7072 7.2492 15.4217 7.33995C16.1363 7.43071 16.8109 7.72037 17.3689 8.17592L17.2497 8.24258L13.2141 10.5434C13.1137 10.6 13.03 10.6823 12.9717 10.7819C12.9135 10.8815 12.8827 10.9947 12.8825 11.1101L12.8792 16.7217V16.7208ZM13.8058 14.75L16.0006 13.4992L18.1947 14.7492V17.2492L16.0006 18.5L13.8058 17.25V14.75Z'
                    fill='white'
                />
            </g>
            <defs>
                <clipPath id={id}>
                    <rect width='32' height='32' fill='white' />
                </clipPath>
            </defs>
        </svg>
    )
}
/**
 * @description Name: OpenAI
 */
export const OpenAIIcon = (props: Partial<IconProps>) => {
    return <Icon component={OpenAI} {...props} />
}

const ChatGLM = () => {
    const id = uuidv4()
    return (
        <svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'>
            <g clipPath={`url(#${id})`}>
                <path
                    d='M16 32C24.8366 32 32 24.8366 32 16C32 7.16344 24.8366 0 16 0C7.16344 0 0 7.16344 0 16C0 24.8366 7.16344 32 16 32Z'
                    fill='#2D73C9'
                />
                <path
                    d='M24.2693 13.9567C24.2917 14.1202 24.3104 14.2847 24.3229 14.4509C24.3319 14.6054 24.3372 14.7608 24.3372 14.9161V14.9379C24.3354 15.6149 24.2354 16.2373 24.0639 16.7406C24.0227 16.8107 23.9764 16.8775 23.9254 16.9405V16.936C24.111 15.7514 24.0279 14.5393 23.6825 13.3924L23.6834 13.3942C23.5293 12.8778 23.3236 12.3788 23.0697 11.905H23.0724L23.0697 11.8996C21.6414 9.22827 18.7553 7.40379 15.4234 7.40379C10.6731 7.40379 6.825 11.1127 6.825 15.6885C6.825 20.2633 10.6749 23.974 15.4226 23.974H15.4243C15.5235 23.974 15.6244 23.974 15.7254 23.9686C16.0148 23.9604 16.3033 23.9377 16.59 23.8986C17.5101 23.6896 18.2006 23.0618 18.2747 22.3031L18.2783 22.3076C18.5072 22.6211 18.6124 23.0104 18.5731 23.3989C18.8634 23.3235 19.1412 23.2072 19.3993 23.0518C19.5154 22.9791 19.6262 22.9019 19.7343 22.8192L19.745 22.8101L19.7807 22.7828C19.8504 22.7292 19.9254 22.6702 20.0085 22.5948C20.1077 22.4966 20.2515 22.3494 20.3462 22.235L20.4069 22.1541L20.4123 22.145V22.1441C20.4974 22.0201 20.5701 21.8877 20.6293 21.7489C20.682 21.6126 20.7419 21.3672 20.707 21.0429C20.7048 21.0358 20.7024 21.0289 20.6999 21.022C20.6921 20.9235 20.6483 20.8316 20.5772 20.7644C20.5062 20.6971 20.4129 20.6593 20.3158 20.6585H18.7276C18.7398 20.6064 18.7591 20.5563 18.7848 20.5095C19.0179 20.0725 19.8254 19.7472 20.7865 19.7472C21.4556 19.7472 22.0487 19.9053 22.4301 20.147C22.5061 20.1951 22.5757 20.2506 22.6391 20.3151L22.6445 20.3205C22.6758 20.3296 22.7079 20.3378 22.741 20.3432C22.7633 20.3478 22.7812 20.3478 22.7999 20.3478C23.1349 20.3296 23.4717 20.3296 23.8066 20.3478L23.8013 20.375L23.8004 20.3841C23.7682 20.5713 23.7262 20.7567 23.6744 20.9384C23.2671 22.364 22.356 23.2435 22.0451 23.5406C21.8295 23.7442 21.6002 23.9324 21.3591 24.104C19.862 25.1888 18.2613 25.6032 17.7531 25.724C17.3046 25.8303 14.6642 26.4073 11.9273 25.426C8.44982 24.1794 4.90361 20.4786 5.00455 15.8048C5.10012 11.4344 8.33638 8.74944 9.03044 8.20336C12.6544 5.35943 16.7642 6.03543 17.4315 6.15446C18.2595 6.34617 20.4015 6.94585 22.1273 8.90572C22.5248 9.35729 23.6789 10.6984 24.1121 12.7736C24.1934 13.1625 24.2461 13.555 24.2684 13.9512V13.9557L24.2693 13.9567ZM24.8035 16.7179C24.7624 16.6961 24.7972 16.5843 24.8767 16.3308C24.9366 16.1373 25.0223 15.8602 25.1197 15.4786C25.1197 15.4786 25.3796 14.4546 25.7646 13.5887L25.7664 13.5841C25.8226 13.4418 25.9255 13.3236 26.0576 13.2498L26.0585 13.2489C26.0987 13.2289 26.2747 13.1398 26.414 13.2216C26.557 13.2997 26.5739 13.4996 26.5829 13.6123V13.6323C26.5954 13.8167 26.5561 14.0003 26.4694 14.162C25.8799 15.3123 25.7637 15.4795 25.7637 15.4795C25.0875 16.5407 24.8678 16.7552 24.8035 16.7188V16.7179ZM29.0777 14.073L29.0866 14.0784C29.2072 14.1511 29.3528 14.2392 29.3895 14.3991C29.4806 14.8035 28.7526 15.325 28.2175 15.5531C28.1436 15.5833 28.0689 15.6112 27.9933 15.6367L27.9879 15.6385C27.7966 15.7073 27.5982 15.7543 27.3966 15.7784C27.3019 15.7911 27.2448 15.7975 27.2421 15.8238C27.2394 15.8429 27.2716 15.8584 27.3225 15.8811C27.4337 15.9242 27.5313 15.9974 27.6047 16.0928L27.6092 16.1019C27.6405 16.1473 27.7048 16.2445 27.6914 16.3536C27.6824 16.4417 27.6137 16.5716 27.1644 16.7642C26.9143 16.8733 26.6552 16.9569 26.3872 17.0096C25.7593 17.1304 24.9866 17.2249 24.9777 17.164C24.975 17.1495 25.0107 17.1368 25.0938 17.1068C25.1796 17.0759 25.3153 17.0268 25.5136 16.9405C25.7843 16.8251 26.0406 16.6788 26.2791 16.5044L26.2961 16.4935C26.4569 16.3772 26.5525 16.2981 26.5793 16.2745C26.6525 16.2136 26.7535 16.121 26.8356 15.9956C26.8647 15.9569 26.8851 15.9122 26.8955 15.8647C26.9024 15.8318 26.903 15.7979 26.8973 15.7648C26.892 15.7395 26.8926 15.7134 26.8991 15.6885C26.9259 15.6203 27 15.5912 27.0384 15.5776L27.042 15.5767C27.3305 15.4586 27.6083 15.3123 27.8691 15.1387C28.0424 15.0224 28.172 14.9298 28.222 14.7571C28.272 14.5845 28.2398 14.3428 28.1264 14.2965C28.1147 14.2923 28.1028 14.289 28.0907 14.2865C28.0576 14.2792 28.0219 14.2701 28.0013 14.241C27.9799 14.2029 27.9969 14.1575 28.0013 14.1438C28.0576 13.9894 28.6338 13.8122 29.0777 14.073ZM28.4238 17.6111C28.3408 17.3921 28.029 17.3358 27.8057 17.2994C27.5949 17.2613 27.435 17.2758 27.1876 17.2994C26.9426 17.3235 26.6996 17.3654 26.4605 17.4248L26.4158 17.4348C25.8557 17.5738 25.5047 17.6592 25.5047 17.7692C25.5047 17.8764 26.0299 17.9645 27.0867 18.1362C27.7959 18.2544 28.1067 18.2853 28.2997 18.0854C28.414 17.96 28.4828 17.7637 28.4238 17.6111Z'
                    fill='white'
                />
                <path
                    d='M27.9068 17.8255C27.8515 17.9464 27.5942 17.9373 27.0922 17.8946L27.0591 17.8918C26.3669 17.8282 26.0176 17.7964 26.0176 17.741C26.0176 17.7029 26.2097 17.672 26.5964 17.6102L26.7036 17.592L26.7313 17.5884C26.7956 17.5793 26.9528 17.5548 27.1511 17.5411C27.2887 17.532 27.3941 17.5266 27.5174 17.5357C27.8059 17.5593 27.8604 17.6338 27.8747 17.6565C27.9068 17.6992 27.9336 17.7692 27.9068 17.8255ZM12.6144 12.4693C12.6099 12.4473 12.6063 12.4252 12.6036 12.403L12.7198 12.6119L12.718 12.5238L12.6036 12.403L12.4705 10.6239C12.4603 10.4674 12.4806 10.3104 12.5301 10.1619C12.5795 10.0133 12.6573 9.87615 12.7589 9.75819C12.8605 9.64023 12.984 9.54379 13.1223 9.47438C13.2606 9.40497 13.4109 9.36396 13.5648 9.35368L14.458 9.2928C14.5563 9.28553 14.6545 9.29189 14.7519 9.31006C15.0896 9.29242 15.427 9.3505 15.7402 9.48019C16.0534 9.60989 16.3347 9.80802 16.5643 10.0606C17.5338 10.002 18.4943 10.278 19.2904 10.8439C20.0864 11.4099 20.6712 12.2327 20.9502 13.1789L21.0556 13.8876L21.0574 13.8976L21.0601 13.8967L21.0833 14.0475L21.0877 14.0593L21.1288 14.3283L21.5129 16.856L21.5219 16.9287L21.563 17.1922L21.5817 17.3267V17.3794C21.6317 17.7446 21.939 18.0154 22.3008 18.0154C22.4288 18.0147 22.5544 17.9796 22.6648 17.9138C22.7752 17.8479 22.8666 17.7535 22.9296 17.6402L22.9359 17.6247L22.9868 17.5039L23.069 17.3076C23.0773 17.2883 23.0895 17.271 23.1047 17.2567C23.1263 17.2343 23.154 17.2189 23.1842 17.2124C23.2144 17.2059 23.2458 17.2087 23.2744 17.2204L23.3245 17.2431V17.2485L23.5612 17.3485L23.897 17.4893C23.8983 17.491 23.8998 17.4926 23.9015 17.4939L23.9042 17.4957H23.9077L23.9104 17.4984L23.9149 17.5048C23.9423 17.5246 23.9623 17.5532 23.9717 17.586C23.9811 17.6188 23.9793 17.6539 23.9667 17.6856L23.8631 17.9355L23.8604 17.9464V17.9509C23.8247 18.0854 23.7738 18.2117 23.705 18.3325L23.7014 18.338V18.3389L23.6996 18.3416C23.6985 18.3434 23.6969 18.345 23.6952 18.3461L23.6889 18.358L23.6862 18.3625L23.6844 18.3652L23.6728 18.3843C23.6728 18.3861 23.671 18.387 23.6701 18.3888C23.6695 18.3894 23.669 18.3901 23.6687 18.3909C23.6684 18.3917 23.6683 18.3925 23.6684 18.3934C23.3575 18.8913 22.7849 19.2402 22.2043 19.2402H21.8157C21.4754 19.2392 21.1444 19.1266 20.8719 18.919C20.5995 18.7115 20.4001 18.4201 20.3035 18.0881L20.2954 18.0627C20.2908 18.048 20.287 18.0332 20.2838 18.0181L20.2811 18.0027H20.2802L20.2919 18.0572C20.2874 18.0429 20.2835 18.0283 20.2802 18.0136L20.2776 18.0018H20.2731C20.265 17.9714 20.259 17.9404 20.2552 17.9091L20.1632 17.4984L20.1588 17.4802C20.1506 17.4545 20.1446 17.428 20.1409 17.4012L20.1221 17.3131V17.3639C20.1184 17.3532 20.1174 17.3416 20.1195 17.3303V17.3231C20.1181 17.318 20.1172 17.3128 20.1168 17.3076V17.2804L20.1132 17.2622L20.1078 17.2386V17.2249L20.1061 17.2149L20.1043 17.2186L20.0989 17.2249H20.098V17.2277H20.0953C20.0927 17.2295 20.0909 17.2304 20.0909 17.234L20.0837 17.1977L20.0819 17.1831L20.0775 17.1595C20.0446 17.0078 19.9821 16.8643 19.8935 16.7377C19.805 16.6111 19.6922 16.5039 19.5621 16.4226C19.3876 16.3198 19.1894 16.2659 18.9877 16.2663C18.952 16.2663 18.9145 16.2663 18.8778 16.27C18.86 16.27 18.8421 16.27 18.8242 16.2754C18.77 16.2845 18.7164 16.2967 18.6635 16.3118L18.6215 16.3263C18.5706 16.3445 18.5214 16.3654 18.4732 16.3899L18.4437 16.4054L18.425 16.4172L18.4071 16.4281L18.3651 16.4572C18.3615 16.4572 18.3571 16.4608 18.3526 16.4653C18.3385 16.4706 18.3256 16.4789 18.3151 16.4899C18.3083 16.4947 18.3017 16.4998 18.2954 16.5053L18.2749 16.5217C18.2598 16.531 18.2457 16.542 18.2329 16.5544C18.2195 16.5635 18.2061 16.5771 18.1963 16.5871L18.165 16.6189L18.1534 16.6334C18.1499 16.6386 18.146 16.6434 18.1418 16.648C18.1418 16.6516 18.1382 16.657 18.1347 16.6598L18.132 16.6625C18.125 16.6691 18.1189 16.6768 18.1141 16.6852C18.109 16.6903 18.1042 16.6958 18.0998 16.7016C18.0687 16.728 18.0442 16.7617 18.0284 16.7997C18.0248 16.8087 18.0196 16.8171 18.0132 16.8242C18.0075 16.8391 18 16.8531 17.9908 16.866L17.981 16.8824L17.9792 16.8869C17.976 16.8943 17.9722 16.9013 17.9676 16.9078C17.9673 16.9104 17.9664 16.9129 17.9649 16.9151L17.9631 16.9224C17.9606 16.9295 17.9577 16.9365 17.9542 16.9433C17.9506 16.9505 17.9462 16.9569 17.9453 16.9642C17.943 16.9729 17.94 16.9814 17.9364 16.9896C17.9324 16.9978 17.9291 17.0063 17.9265 17.015V17.0196L17.9203 17.0432L17.9122 17.0668V17.0705L17.906 17.0977C17.898 17.1222 17.8911 17.1471 17.8854 17.1722V17.1786C17.8835 17.187 17.882 17.1955 17.881 17.204L17.8765 17.2286C17.8712 17.2469 17.8682 17.2658 17.8676 17.2849L17.8649 17.3122C17.8634 17.3215 17.8625 17.3309 17.8622 17.3403L17.8613 17.3458L17.8604 17.3503L17.8595 17.3549C17.8577 17.3639 17.8577 17.373 17.8577 17.3821V19.3838H17.8443V20.1061C17.8429 20.2945 17.7687 20.4748 17.6376 20.6079C17.5066 20.7411 17.3293 20.8164 17.144 20.8176H15.3593C15.174 20.8168 14.9964 20.7417 14.8652 20.6084C14.7341 20.4752 14.6599 20.2947 14.659 20.1061V19.2039C14.6212 18.9125 14.4759 18.6466 14.2527 18.46C14.0295 18.2734 13.7449 18.18 13.4565 18.1987C13.1681 18.2174 12.8975 18.3468 12.6994 18.5607C12.5013 18.7747 12.3904 19.0571 12.3893 19.3511V19.3847H12.3759V20.1116C12.3762 20.2052 12.3583 20.2979 12.3233 20.3845C12.2882 20.471 12.2366 20.5496 12.1715 20.6158C12.1064 20.6819 12.029 20.7343 11.9439 20.7698C11.8588 20.8054 11.7676 20.8235 11.6755 20.823H9.89082C9.70531 20.822 9.52768 20.7465 9.39667 20.6129C9.26566 20.4793 9.19188 20.2985 9.19141 20.1097V15.6939C9.19141 15.6621 9.19319 15.6303 9.19677 15.6012C9.22029 14.8667 9.49929 14.1645 9.98412 13.6196C10.469 13.0747 11.1281 12.7224 11.8444 12.6256C11.8444 12.6583 11.8488 12.6955 11.8533 12.7282C11.8953 12.9717 11.956 13.2034 12.0168 13.4369C12.0534 13.5778 12.09 13.7195 12.124 13.864C12.1901 14.1547 12.2776 14.4019 12.3741 14.6727L12.3767 14.6817L12.4428 14.8689C12.5661 15.2251 12.6947 15.4813 12.818 15.7257L12.8645 15.8184C12.9556 16.0119 13.0583 16.1973 13.1762 16.3736L13.186 16.3908L13.2021 16.4145L13.2075 16.419C13.2405 16.4708 13.2763 16.5162 13.3129 16.5644L13.3379 16.5953L13.4004 16.6625C13.546 16.8061 13.8256 17.0477 14.2561 17.1822C14.4116 17.2313 14.567 17.2367 14.7233 17.2231L16.3955 16.3917L14.6867 14.5945C14.5768 14.9407 14.4071 15.186 14.1954 15.276L14.7867 16.3436C14.7091 16.3885 14.6205 16.41 14.5313 16.4054C14.4304 16.398 14.3325 16.3669 14.2454 16.3145L14.2374 16.3172C14.0894 16.2336 13.9614 16.1179 13.8622 15.9783C13.5353 15.5931 13.2307 14.9752 13.0252 14.2374L13.0235 14.2311L13.011 14.1856L12.9976 14.1493L12.9886 14.1384L12.9761 14.0857C12.8949 13.845 12.833 13.5979 12.7912 13.347C12.7152 13.0658 12.657 12.7799 12.617 12.4911L12.6144 12.4684H12.6135L12.6144 12.4693Z'
                    fill='white'
                />
                <path
                    d='M18.5351 13.6904C18.4674 13.5758 18.4325 13.4443 18.4341 13.3106C18.4323 13.1374 18.4902 12.9689 18.598 12.8347C18.7057 12.7005 18.8564 12.609 19.0237 12.5762C19.191 12.5434 19.3642 12.5715 19.5133 12.6554C19.6623 12.7393 19.7777 12.8738 19.8392 13.0353C19.8757 13.1255 19.8939 13.2222 19.8928 13.3197V13.3488C19.8352 13.2527 19.7568 13.1713 19.6636 13.1106C19.5705 13.0499 19.465 13.0115 19.3551 12.9984C19.2452 12.9852 19.1338 12.9977 19.0294 13.0348C18.9249 13.0719 18.8301 13.1327 18.7521 13.2125C18.6253 13.3398 18.5482 13.5097 18.5351 13.6904Z'
                    fill='white'
                />
            </g>
            <defs>
                <clipPath id={id}>
                    <rect width='32' height='32' fill='white' />
                </clipPath>
            </defs>
        </svg>
    )
}
/**
 * @description Name: ChatGLM
 */
export const ChatGLMIcon = (props: Partial<IconProps>) => {
    return <Icon component={ChatGLM} {...props} />
}

const Moonshot = () => {
    const id = uuidv4()
    return (
        <svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'>
            <g clipPath={`url(#${id})`}>
                <path
                    d='M16 32C24.8366 32 32 24.8366 32 16C32 7.16344 24.8366 0 16 0C7.16344 0 0 7.16344 0 16C0 24.8366 7.16344 32 16 32Z'
                    fill='#171717'
                />
                <path
                    d='M7.1673 19.8692L14.8376 21.9657V23.6545L19.5363 24.967C18.4093 25.4115 17.2084 25.6389 15.9969 25.6372C12.0507 25.6372 8.65743 23.2651 7.1673 19.8692ZM6.3903 15.2256L15.5166 17.7491L15.3013 18.5786L15.1657 19.3635L23.7582 21.7155C23.3316 22.2932 22.8421 22.8218 22.2987 23.2914L6.8768 19.1246C6.44823 17.8722 6.28261 16.5449 6.3903 15.2256ZM7.6748 11.1359L17.2902 13.6952C17.0977 13.9481 16.9253 14.2141 16.7739 14.4924C16.6392 14.7426 16.5289 15.0042 16.4441 15.2755L25.4767 17.7465C25.3621 18.373 25.1853 18.9864 24.9491 19.5779L6.46205 14.5807C6.64143 13.3654 7.05268 12.1955 7.67393 11.135L7.6748 11.1359ZM11.2264 7.62362L20.2844 10.05C20.0199 10.2089 19.7735 10.3961 19.5494 10.6082C19.2882 10.8713 19.0475 11.1538 18.8293 11.4535L25.2212 13.1965C25.4277 13.879 25.5581 14.5825 25.6088 15.2939L8.03268 10.5689C8.86042 9.35764 9.95247 8.35025 11.2264 7.62274V7.62362ZM15.9969 6.36274C19.1994 6.36274 22.0371 7.92462 23.7897 10.3282L12.0813 7.19137C13.3138 6.64319 14.648 6.36085 15.9969 6.36274Z'
                    fill='white'
                />
            </g>
            <defs>
                <clipPath id={id}>
                    <rect width='32' height='32' fill='white' />
                </clipPath>
            </defs>
        </svg>
    )
}
/**
 * @description Name: Moonshot
 */
export const MoonshotIcon = (props: Partial<IconProps>) => {
    return <Icon component={Moonshot} {...props} />
}

const Tongyi = () => {
    const id = uuidv4()
    return (
        <svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'>
            <g clipPath={`url(#${id})`}>
                <path
                    d='M16 32C24.8366 32 32 24.8366 32 16C32 7.16344 24.8366 0 16 0C7.16344 0 0 7.16344 0 16C0 24.8366 7.16344 32 16 32Z'
                    fill='#605BEC'
                />
                <path
                    d='M26.3828 18.2312L23.7719 13.6586L24.8922 11.5117C25.0469 11.3078 25.0867 11.0078 25.0234 10.7664L23.5867 8.17185C23.4766 8.00076 23.2867 7.89529 23.0828 7.8906H17.7414L16.5461 5.79998C16.4617 5.63591 16.3 5.52341 16.1172 5.50232H13.2977C13.0891 5.50701 12.9414 5.65935 12.8383 5.83982L12.7938 5.91248L10.1266 10.4851H7.56719C7.35625 10.4804 7.15703 10.5859 7.04453 10.7664L5.57031 13.3773C5.47656 13.5648 5.47656 13.7875 5.57031 13.975L8.22109 18.5851L7.02578 20.6758C6.93203 20.8633 6.93203 21.0836 7.02578 21.2734L8.3875 23.664C8.49766 23.8469 8.69688 23.9617 8.91016 23.9617H14.2492L15.5359 26.2C15.6344 26.3687 15.8078 26.4789 16.0023 26.5H19.0258C19.2344 26.4953 19.4266 26.3828 19.5297 26.2023L22.1641 21.5898H24.5172C24.7258 21.5711 24.9133 21.4539 25.0211 21.2734L26.3828 18.8664C26.5094 18.6719 26.5094 18.4234 26.3828 18.2312ZM23.0805 18.5312L21.7188 16.0117L16.1172 25.8836L14.5867 23.364H8.9875L10.3328 20.9195H13.1875L7.58594 11.0828H10.5156L13.2977 6.11638L14.6969 8.56091L13.2602 11.0804H24.4609L23.043 13.5836L25.8625 18.5289H23.0805V18.5312Z'
                    fill='white'
                />
                <path d='M15.9861 19.4804L19.4783 13.8812H12.4775L15.9861 19.4804Z' fill='white' />
            </g>
            <defs>
                <clipPath id={id}>
                    <rect width='32' height='32' fill='white' />
                </clipPath>
            </defs>
        </svg>
    )
}
/**
 * @description Name: Tongyi
 */
export const TongyiIcon = (props: Partial<IconProps>) => {
    return <Icon component={Tongyi} {...props} />
}

const Comate = () => {
    const id = uuidv4()
    const id1 = uuidv4()
    return (
        <svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'>
            <g clipPath='url(#clip0_38808_67860)'>
                <path
                    d='M16 32C24.8366 32 32 24.8366 32 16C32 7.16344 24.8366 0 16 0C7.16344 0 0 7.16344 0 16C0 24.8366 7.16344 32 16 32Z'
                    fill={`url(#${id})`}
                />
                <path
                    d='M6.25495 18.9136C6.2515 16.2555 6.24805 13.5974 6.24805 10.9392C6.24805 10.5906 6.42756 10.3179 6.72789 10.1418C7.79459 9.51698 8.86129 8.89215 9.93489 8.27768C11.6023 7.31799 13.2731 6.36521 14.9439 5.40898C15.1165 5.31232 15.2857 5.21221 15.4479 5.09829C15.9036 4.78415 16.3627 4.72201 16.8564 5.01544C17.4984 5.39862 18.144 5.77145 18.7895 6.14428C20.8539 7.33871 22.9217 8.52968 24.9861 9.72066C25.2173 9.85529 25.4521 9.98302 25.6799 10.1211C26.0113 10.3213 26.1839 10.6148 26.1839 11.0048C26.1839 14.4673 26.1908 17.9298 26.1805 21.3922C26.1805 21.7547 26.0113 22.0619 25.6696 22.2587C24.8549 22.7316 24.016 23.17 23.2186 23.6637C22.0725 24.3714 20.8746 24.9789 19.732 25.6935C19.0519 26.1181 18.3373 26.491 17.6434 26.888C17.3362 27.064 17.0324 27.2435 16.7286 27.4265C16.4041 27.6233 16.0762 27.6336 15.7448 27.4438C14.4226 26.6808 13.1005 25.9179 11.7749 25.155C10.325 24.3196 8.8751 23.4876 7.42867 22.6522C7.16631 22.5003 6.9074 22.3519 6.65539 22.1862C6.38613 22.0067 6.25495 21.7374 6.25495 21.4198C6.2515 20.6051 6.2584 19.7904 6.26186 18.9757C6.29983 18.9619 6.29983 18.9378 6.25495 18.9136ZM14.6125 13.6284C14.6643 13.587 14.7161 13.5421 14.7713 13.5076C16.3869 12.579 18.0025 11.6504 19.6215 10.7218C19.6871 10.6838 19.7734 10.6838 19.7768 10.5768C19.7803 10.4629 19.6802 10.4663 19.618 10.4318C18.6653 9.87945 17.7056 9.33402 16.7562 8.77133C16.3627 8.53659 15.9864 8.57111 15.6205 8.78514C14.5434 9.40652 13.4767 10.0417 12.4031 10.67C11.654 11.1084 10.898 11.5399 10.1455 11.9749C9.71396 12.2234 9.49993 12.5686 9.50683 13.0934C9.52754 15.1922 9.52064 17.2911 9.51028 19.39C9.50683 19.8629 9.72777 20.1771 10.104 20.4015C10.8393 20.8399 11.585 21.2714 12.3341 21.6891C12.5896 21.8306 12.8278 22.017 13.173 22.1206V15.8481C13.3249 16.3073 13.6079 16.6456 14.0325 16.8941C14.685 17.2739 15.5135 17.1876 16.0555 16.649C16.6872 16.0242 16.7286 15.175 16.3558 14.5363C15.9726 13.8701 15.334 13.6561 14.6125 13.6284ZM16.5457 23.6982C16.8805 23.6085 17.1532 23.3703 17.457 23.1977C18.4167 22.6522 19.3626 22.0792 20.3292 21.5441C20.9609 21.192 21.5685 20.8019 22.2209 20.4843C22.6145 20.2944 22.9148 19.9561 22.9148 19.4659C22.9182 17.2877 22.9217 15.1128 22.9182 12.9346C22.9182 12.6722 22.7974 12.6066 22.5938 12.7689C21.9724 13.2556 21.2509 13.5767 20.5743 13.9702C19.297 14.7158 18.0163 15.4546 16.7355 16.1968C16.5353 16.3107 16.4594 16.4419 16.4628 16.6766C16.4697 18.9309 16.4663 21.1885 16.4663 23.4428C16.4594 23.5256 16.4317 23.6223 16.5457 23.6982Z'
                    fill={`url(#${id1})`}
                />
                <path
                    d='M13.1724 15.8447C13.0446 14.8056 13.4969 14.1083 14.6119 13.6284C15.3368 13.656 15.972 13.8701 16.3552 14.5329C16.7246 15.175 16.6866 16.0207 16.0549 16.6456C15.5094 17.1841 14.6844 17.2704 14.0319 16.8907C13.6073 16.6421 13.3208 16.3038 13.1724 15.8447Z'
                    fill='white'
                />
            </g>
            <defs>
                <linearGradient
                    id={id}
                    x1='6.33765e-07'
                    y1='33'
                    x2='32'
                    y2='-1.35601e-06'
                    gradientUnits='userSpaceOnUse'
                >
                    <stop stopColor='#066AF3' />
                    <stop offset='1' stopColor='#40E2FF' />
                </linearGradient>
                <linearGradient id={id1} x1='26.5' y1='10' x2='6' y2='22' gradientUnits='userSpaceOnUse'>
                    <stop stopColor='white' />
                    <stop offset='1' stopColor='white' stopOpacity='0.3' />
                </linearGradient>
                <clipPath id='clip0_38808_67860'>
                    <rect width='32' height='32' fill='white' />
                </clipPath>
            </defs>
        </svg>
    )
}
/**
 * @description Name: Comate
 */
export const ComateIcon = (props: Partial<IconProps>) => {
    return <Icon component={Comate} {...props} />
}

const DeepSeek = () => {
    const id = uuidv4()
    return (
        <svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'>
            <g clipPath={`url(#${id})`}>
                <path
                    d='M16 32C24.8366 32 32 24.8366 32 16C32 7.16344 24.8366 0 16 0C7.16344 0 0 7.16344 0 16C0 24.8366 7.16344 32 16 32Z'
                    fill='#4D6BFE'
                />
                <path
                    d='M27.7478 8.45194C27.4936 8.32405 27.3839 8.56782 27.2354 8.6917C27.1848 8.73168 27.1416 8.78364 27.0984 8.83158C26.7271 9.23918 26.2932 9.50696 25.7257 9.47499C24.8967 9.42704 24.1887 9.69479 23.5632 10.3462C23.4301 9.54292 22.9883 9.06337 22.3156 8.75565C21.9631 8.59581 21.6077 8.43594 21.3609 8.08825C21.1892 7.84049 21.1425 7.56474 21.0561 7.29301C21.0015 7.12915 20.9469 6.96131 20.7632 6.93333C20.5631 6.90135 20.4852 7.07321 20.4067 7.21707C20.094 7.80453 19.9723 8.45194 19.9847 9.10733C20.0116 10.582 20.6182 11.7569 21.8226 12.5921C21.9597 12.688 21.9949 12.784 21.9517 12.9238C21.8698 13.2115 21.7715 13.4913 21.6856 13.779C21.631 13.9629 21.5491 14.0028 21.3569 13.9229C20.6962 13.6392 20.1252 13.2195 19.6203 12.712C18.764 11.8608 17.9895 10.9217 17.0239 10.1863C16.8003 10.0167 16.5707 9.85542 16.3353 9.70279C15.3499 8.71969 16.4644 7.91244 16.7226 7.81651C16.9921 7.71661 16.8164 7.37293 15.9441 7.37691C15.0719 7.3809 14.2741 7.68065 13.2573 8.08028C13.1084 8.14021 12.952 8.18417 12.7921 8.22016C11.8687 8.0403 10.9106 8.00036 9.90923 8.11624C8.02421 8.33205 6.51845 9.24721 5.41138 10.8098C4.08188 12.688 3.7686 14.8221 4.15237 17.048C4.5545 19.3939 5.72064 21.3361 7.51186 22.8547C9.36959 24.4292 11.5088 25.2006 13.9494 25.0527C15.4318 24.9648 17.082 24.761 18.9437 23.1424C19.4133 23.3822 19.9063 23.4781 20.7235 23.5501C21.3535 23.61 21.9597 23.5181 22.4288 23.4182C23.164 23.2584 23.1129 22.559 22.8473 22.4311C20.6922 21.4 21.1653 21.8196 20.7354 21.48C21.8306 20.1492 23.4808 18.7664 24.1262 14.2866C24.1773 13.9309 24.1341 13.7071 24.1262 13.4194C24.1222 13.2435 24.1609 13.1756 24.357 13.1556C24.8967 13.0917 25.4209 12.9398 25.902 12.6681C27.298 11.8848 27.8615 10.598 27.9945 9.05537C28.0144 8.8196 27.9906 8.57582 27.7478 8.45194ZM15.5802 22.3352C13.4921 20.6487 12.4789 20.0932 12.0604 20.1172C11.6692 20.1412 11.7397 20.6008 11.8255 20.9005C11.9154 21.1962 12.033 21.4 12.1974 21.6598C12.3106 21.8317 12.389 22.0874 12.0837 22.2792C11.411 22.7069 10.2419 22.1354 10.1873 22.1074C8.82598 21.2842 7.6876 20.1971 6.88583 18.7105C6.11138 17.2798 5.66209 15.7452 5.58761 14.1067C5.56775 13.7111 5.68143 13.5712 6.06422 13.4993C6.56832 13.4005 7.08526 13.387 7.59378 13.4593C9.72557 13.7791 11.5406 14.7581 13.0617 16.3087C13.93 17.1919 14.5868 18.2469 15.264 19.278C15.9833 20.373 16.7578 21.416 17.7433 22.2712C18.0913 22.571 18.3688 22.7988 18.6349 22.9666C17.8331 23.0585 16.4952 23.0785 15.5802 22.3352ZM16.5816 15.7213C16.5816 15.5454 16.7186 15.4055 16.8908 15.4055C16.9299 15.4062 16.965 15.4129 16.9961 15.4255C17.0554 15.4484 17.1063 15.4891 17.1419 15.5419C17.1776 15.5948 17.1964 15.6574 17.1957 15.7213C17.1962 15.7624 17.1886 15.8033 17.1733 15.8415C17.1581 15.8798 17.1354 15.9146 17.1067 15.9439C17.078 15.9733 17.0438 15.9966 17.0061 16.0126C16.9683 16.0286 16.9278 16.0369 16.8869 16.037C16.8461 16.0369 16.8058 16.0285 16.7682 16.0125C16.7307 15.9965 16.6967 15.9731 16.6682 15.9437C16.6398 15.9143 16.6175 15.8795 16.6026 15.8413C16.5877 15.8031 16.5806 15.7623 16.5816 15.7213ZM19.6909 17.3597C19.4918 17.4437 19.2922 17.5156 19.1001 17.5236C18.8032 17.5396 18.4785 17.4157 18.3028 17.2639C18.0287 17.028 17.8331 16.8962 17.7512 16.4846C17.7159 16.3087 17.7353 16.037 17.7666 15.8811C17.8371 15.5454 17.7587 15.3296 17.5283 15.1338C17.3407 14.9739 17.1018 14.93 16.8397 14.93C16.7419 14.93 16.6521 14.886 16.5855 14.8501C16.5531 14.8345 16.5243 14.8123 16.5008 14.7849C16.4774 14.7576 16.4597 14.7256 16.4491 14.6911C16.4385 14.6566 16.4351 14.6202 16.4391 14.5843C16.4431 14.5484 16.4544 14.5137 16.4723 14.4824C16.4996 14.4265 16.6327 14.2906 16.664 14.2666C17.0199 14.0588 17.4305 14.1267 17.8098 14.2826C18.1618 14.4304 18.4274 14.7022 18.8111 15.0859C19.2023 15.5494 19.2728 15.6773 19.4952 16.025C19.6715 16.2967 19.8318 16.5765 19.9411 16.8962C20.0081 17.096 19.9217 17.2598 19.6909 17.3597Z'
                    fill='white'
                />
            </g>
            <defs>
                <clipPath id={id}>
                    <rect width='32' height='32' fill='white' />
                </clipPath>
            </defs>
        </svg>
    )
}
/**
 * @description Name: DeepSeek
 */
export const DeepSeekIcon = (props: Partial<IconProps>) => {
    return <Icon component={DeepSeek} {...props} />
}

const SiliconFlow = () => {
    const id = uuidv4()
    return (
        <svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'>
            <g clipPath={`url(#${id})`}>
                <path
                    d='M16 32C24.8366 32 32 24.8366 32 16C32 7.16344 24.8366 0 16 0C7.16344 0 0 7.16344 0 16C0 24.8366 7.16344 32 16 32Z'
                    fill='#6F29F4'
                />
                <path
                    d='M26.9564 10.2614H16.5207C15.9438 10.2614 15.4771 10.7281 15.4771 11.305V14.4357C15.4771 15.0126 15.0104 15.4793 14.4336 15.4793H5.04357C4.46669 15.4793 4 15.946 4 16.5228V20.6971C4 21.274 4.46669 21.7407 5.04357 21.7407H15.4793C16.0562 21.7407 16.5229 21.274 16.5229 20.6971V17.5664C16.5229 16.9895 16.9896 16.5228 17.5664 16.5228H26.9586C27.5355 16.5228 28.0022 16.0562 28.0022 15.4793V11.305C28.0022 10.7281 27.5355 10.2614 26.9586 10.2614H26.9564Z'
                    fill='white'
                />
            </g>
            <defs>
                <clipPath id={id}>
                    <rect width='32' height='32' fill='white' />
                </clipPath>
            </defs>
        </svg>
    )
}
/**
 * @description Name: SiliconFlow
 */
export const SiliconFlowIcon = (props: Partial<IconProps>) => {
    return <Icon component={SiliconFlow} {...props} />
}

const Ollama = () => {
    const id = uuidv4()
    return (
        <svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'>
            <g clipPath={`url(#${id})`}>
                <path
                    d='M16 32C24.8366 32 32 24.8366 32 16C32 7.16344 24.8366 0 16 0C7.16344 0 0 7.16344 0 16C0 24.8366 7.16344 32 16 32Z'
                    fill='#171717'
                />
                <path
                    d='M21.9156 26.113C21.8848 26.1133 21.8543 26.1073 21.826 26.0951C21.7978 26.083 21.7723 26.065 21.7514 26.0425L21.7469 26.038C21.7189 26.0086 21.6993 25.9721 21.6903 25.9325C21.6814 25.8929 21.6833 25.8516 21.6959 25.813C21.6959 25.8055 21.7034 25.8025 21.7034 25.798C21.9655 25.047 21.9552 24.2276 21.6741 23.4835C21.5756 23.1832 21.4522 22.8917 21.3051 22.612C21.2184 22.4684 21.1819 22.3001 21.2013 22.1335C21.2207 21.9669 21.295 21.8115 21.4124 21.6917C21.8309 21.2118 22.0523 20.5912 22.0319 19.9547C22.0966 19.2787 21.982 18.5976 21.6996 17.98C21.6472 17.8727 21.5823 17.772 21.5061 17.68C21.357 17.5211 21.2747 17.311 21.2761 17.0931C21.2775 16.8752 21.3625 16.6662 21.5136 16.5092C21.8751 16.0878 22.0985 15.5656 22.1538 15.0132C22.209 14.4607 22.0934 13.9046 21.8226 13.42C21.6462 13.0193 21.37 12.6706 21.0205 12.4069C20.671 12.1433 20.2598 11.9736 19.8261 11.914C19.7849 11.914 19.7399 11.9065 19.6911 11.9065C19.5941 11.9074 19.4972 11.9136 19.4009 11.9252C19.3671 11.9252 19.3334 11.9327 19.2996 11.9372C19.2366 11.9372 19.1811 11.9447 19.1279 11.9447C18.962 11.9531 18.7978 11.9069 18.6606 11.8134C18.5233 11.7198 18.4203 11.584 18.3674 11.4265C18.137 10.9878 17.7916 10.6201 17.3681 10.3629C16.9446 10.1056 16.4591 9.96851 15.9636 9.96623C15.4889 9.96595 15.0247 10.1061 14.6294 10.369C14.1804 10.6288 13.8188 11.0162 13.5906 11.482C13.5345 11.6191 13.439 11.7365 13.3162 11.8194C13.1934 11.9023 13.0488 11.9469 12.9006 11.9477C12.848 11.9486 12.7954 11.9435 12.7439 11.9327C12.6183 11.9135 12.4914 11.9037 12.3644 11.9035C11.969 11.9166 11.5828 12.0259 11.2393 12.2219C10.8957 12.418 10.6051 12.6948 10.3926 13.0285C10.125 13.3958 9.94684 13.8205 9.87236 14.2688C9.79788 14.7171 9.82913 15.1766 9.96363 15.6107C10.0997 15.9318 10.2761 16.2342 10.4886 16.5107L10.5104 16.5445C10.6249 16.6965 10.6905 16.8799 10.6984 17.0701C10.7063 17.2603 10.6562 17.4484 10.5546 17.6095L10.5104 17.677C10.3549 17.8836 10.2287 18.1108 10.1354 18.352C9.85467 19.2303 9.86545 20.1758 10.1661 21.0475C10.2546 21.2569 10.3767 21.4505 10.5276 21.6205C10.6636 21.7559 10.75 21.9331 10.7728 22.1236C10.7957 22.3141 10.7537 22.5068 10.6536 22.6705C10.3333 23.2738 10.1456 23.9387 10.1031 24.6205C10.0737 25.0237 10.1435 25.428 10.3064 25.798C10.3224 25.8316 10.3295 25.8689 10.3268 25.9061C10.3242 25.9433 10.312 25.9792 10.2914 26.0102C10.2711 26.0421 10.2432 26.0683 10.2102 26.0865C10.1772 26.1047 10.1401 26.1143 10.1024 26.1145H8.88663C8.8351 26.1144 8.78516 26.0966 8.74516 26.0641C8.70517 26.0316 8.67753 25.9864 8.66688 25.936C8.41935 24.7559 8.54058 23.5282 9.01413 22.4192C9.0249 22.3691 9.02073 22.317 9.00213 22.2692V22.2647C8.32497 20.9991 8.16836 19.5191 8.56563 18.1397C8.62056 17.9428 8.68897 17.7498 8.77038 17.5622C8.82138 17.4347 8.87463 17.3207 8.91138 17.2007C8.92438 17.1599 8.92594 17.1164 8.91588 17.0747C8.56879 16.5285 8.35024 15.9106 8.27671 15.2677C8.20318 14.6247 8.27658 13.9734 8.49138 13.363C8.74189 12.5224 9.24713 11.7802 9.93738 11.239C9.98538 11.2052 10.0049 11.179 9.98538 11.0365C9.76193 9.83447 9.84918 8.59531 10.2389 7.43648C10.3657 7.08804 10.5483 6.76254 10.7796 6.47273C10.9159 6.29624 11.0902 6.15264 11.2894 6.05255C11.4887 5.95246 11.7079 5.89844 11.9309 5.89448C12.1709 5.90131 12.4061 5.9629 12.6186 6.07456C12.8312 6.18622 13.0154 6.34499 13.1571 6.53873C13.6402 7.23285 13.939 8.03828 14.0256 8.87948C14.0243 8.88566 14.0243 8.89205 14.0256 8.89823C14.6333 8.57555 15.3094 8.40275 15.9974 8.39423C16.6831 8.40194 17.3569 8.57482 17.9616 8.89823L17.9834 8.79248C18.0434 8.49248 18.1109 8.18573 18.1844 7.88423C18.3034 7.34287 18.562 6.84205 18.9344 6.43148C19.0769 6.2673 19.2516 6.13417 19.4477 6.04037C19.6438 5.94657 19.8571 5.89411 20.0744 5.88623C20.3542 5.90055 20.6256 5.98702 20.8622 6.13723C21.0987 6.28744 21.2924 6.49629 21.4244 6.74348C21.8352 7.40187 22.0604 8.15908 22.0761 8.93498C22.0862 9.64636 22.0599 10.3578 21.9974 11.0665C21.9899 11.1865 22.0064 11.197 22.0431 11.2277C22.5297 11.6115 22.9254 12.0981 23.2019 12.6527C23.578 13.3293 23.7661 14.0942 23.7465 14.868C23.727 15.6418 23.5006 16.3963 23.0909 17.053C23.0713 17.1006 23.0686 17.1536 23.0834 17.203C23.7268 18.57 23.8134 20.1337 23.3249 21.5635C23.267 21.7428 23.1868 21.9141 23.0864 22.0735L22.9604 22.3082C22.9551 22.3246 22.9489 22.3406 22.9416 22.3562C23.4285 23.4811 23.5697 24.7254 23.3474 25.9307C23.3383 25.9825 23.3113 26.0295 23.2711 26.0635C23.231 26.0975 23.1802 26.1163 23.1276 26.1167L21.9156 26.113ZM11.8724 7.62248C11.7388 7.90434 11.6352 8.19946 11.5634 8.50298C11.4187 9.13243 11.3933 9.78341 11.4884 10.4222L11.5994 10.4102C11.8244 10.381 12.0359 10.3547 12.2481 10.3397C12.4896 10.3247 12.5091 10.2872 12.5046 10.0862C12.4985 9.7609 12.4837 9.43578 12.4604 9.11123C12.4176 8.58797 12.2585 8.08087 11.9946 7.62698C11.9741 7.59099 11.9516 7.55619 11.9271 7.52273L11.8724 7.62248ZM19.9214 7.74548C19.5656 8.50053 19.4165 9.33648 19.4894 10.168C19.4969 10.3322 19.5404 10.3352 19.5861 10.3352C19.8396 10.354 20.0961 10.381 20.3654 10.4057C20.4096 10.4102 20.4576 10.4147 20.5034 10.4177C20.5034 10.3255 20.5034 10.2317 20.5109 10.1425C20.5274 9.7522 20.5212 9.36128 20.4921 8.97173C20.4347 8.57958 20.3341 8.19499 20.1921 7.82498L20.1554 7.70948C20.1312 7.65936 20.0967 7.6149 20.0541 7.57898C20.0022 7.62766 19.9577 7.68377 19.9221 7.74548H19.9214ZM15.8811 19.3907C15.24 19.4168 14.6021 19.2882 14.0211 19.0157C13.7028 18.8522 13.4245 18.6204 13.2062 18.3369C12.9878 18.0533 12.8348 17.725 12.7581 17.3755C12.6894 17.0368 12.6965 16.6872 12.7788 16.3516C12.8612 16.0161 13.0167 15.7029 13.2344 15.4345C13.573 15.0309 13.9973 14.7079 14.4764 14.4887C14.9555 14.2696 15.4774 14.16 16.0041 14.1677C16.3936 14.1679 16.7807 14.2296 17.1509 14.3507C17.5779 14.4647 17.9739 14.6728 18.3101 14.9597C18.6462 15.2466 18.9138 15.6052 19.0934 16.009C19.3325 16.5458 19.3577 17.1537 19.1639 17.7085C18.9544 18.2501 18.5543 18.6966 18.0389 18.964C17.387 19.3375 16.6305 19.4866 15.8856 19.3885L15.8811 19.3907ZM14.2686 16.0907C14.1352 16.2214 14.0356 16.3827 13.9785 16.5606C13.9214 16.7384 13.9085 16.9275 13.9409 17.1115C13.975 17.2945 14.0528 17.4666 14.1675 17.6132C14.2823 17.7598 14.4307 17.8766 14.6001 17.9537C15.0149 18.1479 15.4739 18.2279 15.9299 18.1855H16.1736C16.2486 18.1855 16.3041 18.19 16.3671 18.19C16.4519 18.19 16.5171 18.1855 16.5839 18.1825C16.8325 18.1751 17.0764 18.1132 17.2985 18.0011C17.5205 17.889 17.7151 17.7294 17.8686 17.5337C17.9557 17.3989 18.0146 17.2479 18.0417 17.0898C18.0688 16.9316 18.0636 16.7696 18.0264 16.6135C17.9892 16.4574 17.9207 16.3105 17.8251 16.1816C17.7296 16.0527 17.6089 15.9445 17.4704 15.8635C17.0466 15.551 16.532 15.3864 16.0056 15.3947C15.6845 15.3884 15.3653 15.4466 15.0671 15.5659C14.7688 15.6852 14.4976 15.8632 14.2694 16.0892L14.2686 16.0907ZM15.5024 17.6447C15.4521 17.5744 15.4191 17.4932 15.4061 17.4077C15.3931 17.3222 15.4004 17.2349 15.4274 17.1527C15.4566 17.056 15.4491 17.0485 15.3816 17.0027C14.9316 16.6937 15.0389 16.3772 15.1446 16.2175C15.1903 16.1435 15.2544 16.0826 15.3306 16.0408C15.4069 15.999 15.4927 15.9777 15.5796 15.979C15.6815 15.9821 15.7825 15.9993 15.8796 16.03L15.9134 16.0375C15.9134 16.042 15.9306 16.042 15.9576 16.042C15.9981 16.0414 16.0383 16.0363 16.0776 16.027C16.1706 15.9999 16.2666 15.9845 16.3634 15.9812C16.4522 15.9791 16.5401 16.0004 16.618 16.0431C16.696 16.0857 16.7613 16.1482 16.8074 16.2242C16.8477 16.2857 16.8744 16.355 16.8859 16.4276C16.8974 16.5002 16.8933 16.5744 16.8739 16.6454C16.8546 16.7163 16.8204 16.7822 16.7736 16.8389C16.7268 16.8956 16.6686 16.9417 16.6026 16.9742C16.5134 17.0372 16.4916 17.071 16.5276 17.2232C16.5486 17.2952 16.5524 17.3711 16.5388 17.4449C16.5251 17.5186 16.4943 17.5881 16.4489 17.6477C16.3977 17.7075 16.3344 17.7557 16.2632 17.7891C16.1919 17.8225 16.1143 17.8403 16.0356 17.8412H16.0019L15.9869 17.8457C15.8964 17.8528 15.8055 17.8381 15.7219 17.8029C15.6383 17.7676 15.5643 17.7129 15.5061 17.6432L15.5024 17.6447ZM20.3391 16.363C20.0647 16.3411 19.8088 16.2158 19.6233 16.0123C19.4378 15.8089 19.3366 15.5425 19.3401 15.2672C19.3401 15.1463 19.3642 15.0266 19.411 14.9151C19.4578 14.8035 19.5263 14.7025 19.6127 14.6178C19.699 14.5331 19.8013 14.4664 19.9137 14.4217C20.0261 14.377 20.1462 14.3552 20.2671 14.3575H20.2791C20.4181 14.3603 20.5551 14.3906 20.6822 14.4468C20.8093 14.5029 20.924 14.5838 21.0196 14.6846C21.1153 14.7854 21.19 14.9042 21.2394 15.0341C21.2888 15.1639 21.3119 15.3023 21.3074 15.4412C21.3001 15.6902 21.1953 15.9263 21.0156 16.0987C20.8359 16.2711 20.5957 16.366 20.3466 16.363H20.3391ZM11.6339 16.288C11.3843 16.2877 11.1437 16.1947 10.9589 16.027C10.8694 15.9427 10.7982 15.841 10.7496 15.7281C10.701 15.6153 10.676 15.4936 10.6761 15.3707C10.67 15.2318 10.6918 15.0931 10.7403 14.9628C10.7889 14.8324 10.8631 14.7132 10.9586 14.6121C11.054 14.511 11.1689 14.4301 11.2962 14.3743C11.4236 14.3184 11.5608 14.2888 11.6999 14.287H11.7119C11.9562 14.2842 12.1917 14.3781 12.367 14.5482C12.5424 14.7184 12.6433 14.9509 12.6479 15.1952C12.6487 15.2067 12.6471 15.2181 12.6434 15.229C12.6391 15.4983 12.5342 15.7563 12.3493 15.9523C12.1645 16.1482 11.913 16.268 11.6444 16.288H11.6339Z'
                    fill='white'
                />
            </g>
            <defs>
                <clipPath id={id}>
                    <rect width='32' height='32' fill='white' />
                </clipPath>
            </defs>
        </svg>
    )
}
/**
 * @description Name: Ollama
 */
export const OllamaIcon = (props: Partial<IconProps>) => {
    return <Icon component={Ollama} {...props} />
}

const OpenRouter = () => {
    const id = uuidv4()
    return (
        <svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'>
            <g clipPath={`url(#${id})`}>
                <path
                    d='M16 32C24.8366 32 32 24.8366 32 16C32 7.16344 24.8366 0 16 0C7.16344 0 0 7.16344 0 16C0 24.8366 7.16344 32 16 32Z'
                    fill='#94A5B9'
                />
                <path
                    d='M5.29297 15.701C5.9278 15.701 8.38264 15.1539 9.6523 14.4335C10.9209 13.7153 10.9209 13.7153 13.5447 11.853C16.8673 9.49567 19.216 10.2843 23.0672 10.2843'
                    fill='white'
                />
                <path
                    d='M20.7034 12.1173C21.7037 12.165 22.4912 12.1888 23.0661 12.1888V8.38092C22.5512 8.38092 21.8236 8.35854 20.8832 8.31376C19.1037 8.22926 17.7611 8.26212 16.8554 8.41234C15.3279 8.66729 13.8571 9.29634 12.443 10.2995C11.1473 11.2189 10.3456 11.7808 10.038 11.9852C9.75052 12.1758 9.30889 12.4398 8.71305 12.7771C8.279 13.0234 7.62286 13.2635 6.74464 13.4975C5.99425 13.6976 5.51036 13.7976 5.29297 13.7976V17.6055C5.8433 17.6055 6.654 17.4629 7.72505 17.1776C8.91816 16.8598 9.8733 16.4976 10.5905 16.091C11.2643 15.7097 11.7818 15.3991 12.1429 15.1593C12.4845 14.9333 13.3194 14.3486 14.6476 13.4054C15.585 12.7403 16.5297 12.3286 17.4816 12.1704C18.1193 12.0635 19.1932 12.0458 20.7034 12.1173Z'
                    fill='white'
                />
                <path d='M26.7896 10.3082L20.2842 14.0652V6.55225L26.7907 10.3082H26.7896Z' fill='white' />
                <path
                    d='M26.8331 10.3082L20.2952 6.53386L20.2627 6.51544V14.1009L26.8331 10.3082ZM20.306 6.58803V14.0284L26.7486 10.3082L20.306 6.58803Z'
                    fill='white'
                />
                <path
                    d='M5.16699 15.7042C5.80183 15.7042 8.25666 16.2513 9.52524 16.9717C10.7949 17.69 10.7949 17.69 13.4187 19.5522C16.7402 21.9096 19.09 21.1209 22.9412 21.1209'
                    fill='white'
                />
                <path
                    d='M20.7572 23.0915C21.6976 23.0467 22.4252 23.0243 22.9402 23.0243V19.2175C22.3653 19.2175 21.5777 19.241 20.5774 19.2879C19.068 19.3601 17.9937 19.3432 17.3545 19.237C16.4033 19.0781 15.459 18.6661 14.5216 18.0009C13.1927 17.0577 12.3578 16.473 12.0169 16.247C11.6558 16.0072 11.1383 15.6967 10.4645 15.3153C9.7466 14.9087 8.7911 14.5465 7.59799 14.2287C6.52694 13.9427 5.7166 13.7997 5.16699 13.7997V17.6077C5.38438 17.6077 5.86827 17.7077 6.61866 17.9077C7.49688 18.1417 8.15302 18.3819 8.58708 18.6282C9.18291 18.9654 9.62455 19.2294 9.91199 19.4201C10.2197 19.6245 11.0213 20.1864 12.317 21.1057C13.7311 22.1096 15.2019 22.7383 16.7294 22.9918C17.6351 23.1435 18.9777 23.1767 20.7572 23.0915Z'
                    fill='white'
                />
                <path d='M26.6647 21.0971L20.1582 17.3401V24.853L26.6647 21.0971Z' fill='white' />
                <path
                    d='M20.1357 17.3032V24.8898L20.1682 24.8714L26.7062 21.0971L20.1357 17.3032ZM20.1791 24.8161L26.6217 21.0971L20.178 17.3769V24.8161H20.1791Z'
                    fill='white'
                />
            </g>
            <defs>
                <clipPath id={id}>
                    <rect width='32' height='32' fill='white' />
                </clipPath>
            </defs>
        </svg>
    )
}
/**
 * @description Name: OpenRouter
 */
export const OpenRouterIcon = (props: Partial<IconProps>) => {
    return <Icon component={OpenRouter} {...props} />
}

const Gemini = () => {
    const id = uuidv4()
    const id1 = uuidv4()
    const id2 = uuidv4()
    const id3 = uuidv4()
    return (
        <svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'>
            <g clipPath={`url(#${id})`}>
                <path
                    d='M16 32C24.8366 32 32 24.8366 32 16C32 7.16344 24.8366 0 16 0C7.16344 0 0 7.16344 0 16C0 24.8366 7.16344 32 16 32Z'
                    fill='white'
                />
                <path
                    d='M25.3339 14.7379C23.5342 13.9718 21.8978 12.8682 20.5131 11.4868C18.5846 9.55453 17.2088 7.14105 16.5286 4.49717C16.4987 4.37975 16.4306 4.27562 16.335 4.20124C16.2393 4.12687 16.1216 4.08649 16.0005 4.08649C15.8793 4.08649 15.7616 4.12687 15.6659 4.20124C15.5703 4.27562 15.5022 4.37975 15.4723 4.49717C14.7907 7.1407 13.4146 9.55391 11.4867 11.4868C10.1018 12.8681 8.46549 13.9716 6.66591 14.7379C5.96174 15.0413 5.23808 15.285 4.49708 15.4724C4.37893 15.5015 4.27393 15.5693 4.19887 15.665C4.1238 15.7607 4.08301 15.8789 4.08301 16.0005C4.08301 16.1222 4.1238 16.2404 4.19887 16.3361C4.27393 16.4318 4.37893 16.4996 4.49708 16.5287C5.23808 16.715 5.95958 16.9588 6.66591 17.2621C8.46559 18.0282 10.102 19.1318 11.4867 20.5132C13.4157 22.4457 14.7919 24.8596 15.4723 27.5039C15.5014 27.6221 15.5692 27.7271 15.6649 27.8021C15.7606 27.8772 15.8788 27.918 16.0005 27.918C16.1221 27.918 16.2403 27.8772 16.336 27.8021C16.4317 27.7271 16.4995 27.6221 16.5286 27.5039C16.7149 26.7618 16.9587 26.0403 17.262 25.334C18.0281 23.5343 19.1316 21.8979 20.5131 20.5132C22.4458 18.5846 24.8596 17.2088 27.5038 16.5287C27.6213 16.4988 27.7254 16.4307 27.7998 16.3351C27.8741 16.2394 27.9145 16.1217 27.9145 16.0005C27.9145 15.8794 27.8741 15.7617 27.7998 15.666C27.7254 15.5704 27.6213 15.5023 27.5038 15.4724C26.7621 15.2858 26.0365 15.0402 25.3339 14.7379Z'
                    fill='#3186FF'
                />
                <path
                    d='M25.3339 14.7379C23.5342 13.9718 21.8978 12.8682 20.5131 11.4868C18.5846 9.55453 17.2088 7.14105 16.5286 4.49717C16.4987 4.37975 16.4306 4.27562 16.335 4.20124C16.2393 4.12687 16.1216 4.08649 16.0005 4.08649C15.8793 4.08649 15.7616 4.12687 15.6659 4.20124C15.5703 4.27562 15.5022 4.37975 15.4723 4.49717C14.7907 7.1407 13.4146 9.55391 11.4867 11.4868C10.1018 12.8681 8.46549 13.9716 6.66591 14.7379C5.96174 15.0413 5.23808 15.285 4.49708 15.4724C4.37893 15.5015 4.27393 15.5693 4.19887 15.665C4.1238 15.7607 4.08301 15.8789 4.08301 16.0005C4.08301 16.1222 4.1238 16.2404 4.19887 16.3361C4.27393 16.4318 4.37893 16.4996 4.49708 16.5287C5.23808 16.715 5.95958 16.9588 6.66591 17.2621C8.46559 18.0282 10.102 19.1318 11.4867 20.5132C13.4157 22.4457 14.7919 24.8596 15.4723 27.5039C15.5014 27.6221 15.5692 27.7271 15.6649 27.8021C15.7606 27.8772 15.8788 27.918 16.0005 27.918C16.1221 27.918 16.2403 27.8772 16.336 27.8021C16.4317 27.7271 16.4995 27.6221 16.5286 27.5039C16.7149 26.7618 16.9587 26.0403 17.262 25.334C18.0281 23.5343 19.1316 21.8979 20.5131 20.5132C22.4458 18.5846 24.8596 17.2088 27.5038 16.5287C27.6213 16.4988 27.7254 16.4307 27.7998 16.3351C27.8741 16.2394 27.9145 16.1217 27.9145 16.0005C27.9145 15.8794 27.8741 15.7617 27.7998 15.666C27.7254 15.5704 27.6213 15.5023 27.5038 15.4724C26.7621 15.2858 26.0365 15.0402 25.3339 14.7379Z'
                    fill={`url(#${id1})`}
                />
                <path
                    d='M25.3339 14.7379C23.5342 13.9718 21.8978 12.8682 20.5131 11.4868C18.5846 9.55453 17.2088 7.14105 16.5286 4.49717C16.4987 4.37975 16.4306 4.27562 16.335 4.20124C16.2393 4.12687 16.1216 4.08649 16.0005 4.08649C15.8793 4.08649 15.7616 4.12687 15.6659 4.20124C15.5703 4.27562 15.5022 4.37975 15.4723 4.49717C14.7907 7.1407 13.4146 9.55391 11.4867 11.4868C10.1018 12.8681 8.46549 13.9716 6.66591 14.7379C5.96174 15.0413 5.23808 15.285 4.49708 15.4724C4.37893 15.5015 4.27393 15.5693 4.19887 15.665C4.1238 15.7607 4.08301 15.8789 4.08301 16.0005C4.08301 16.1222 4.1238 16.2404 4.19887 16.3361C4.27393 16.4318 4.37893 16.4996 4.49708 16.5287C5.23808 16.715 5.95958 16.9588 6.66591 17.2621C8.46559 18.0282 10.102 19.1318 11.4867 20.5132C13.4157 22.4457 14.7919 24.8596 15.4723 27.5039C15.5014 27.6221 15.5692 27.7271 15.6649 27.8021C15.7606 27.8772 15.8788 27.918 16.0005 27.918C16.1221 27.918 16.2403 27.8772 16.336 27.8021C16.4317 27.7271 16.4995 27.6221 16.5286 27.5039C16.7149 26.7618 16.9587 26.0403 17.262 25.334C18.0281 23.5343 19.1316 21.8979 20.5131 20.5132C22.4458 18.5846 24.8596 17.2088 27.5038 16.5287C27.6213 16.4988 27.7254 16.4307 27.7998 16.3351C27.8741 16.2394 27.9145 16.1217 27.9145 16.0005C27.9145 15.8794 27.8741 15.7617 27.7998 15.666C27.7254 15.5704 27.6213 15.5023 27.5038 15.4724C26.7621 15.2858 26.0365 15.0402 25.3339 14.7379Z'
                    fill={`url(#${id2})`}
                />
                <path
                    d='M25.3339 14.7379C23.5342 13.9718 21.8978 12.8682 20.5131 11.4868C18.5846 9.55453 17.2088 7.14105 16.5286 4.49717C16.4987 4.37975 16.4306 4.27562 16.335 4.20124C16.2393 4.12687 16.1216 4.08649 16.0005 4.08649C15.8793 4.08649 15.7616 4.12687 15.6659 4.20124C15.5703 4.27562 15.5022 4.37975 15.4723 4.49717C14.7907 7.1407 13.4146 9.55391 11.4867 11.4868C10.1018 12.8681 8.46549 13.9716 6.66591 14.7379C5.96174 15.0413 5.23808 15.285 4.49708 15.4724C4.37893 15.5015 4.27393 15.5693 4.19887 15.665C4.1238 15.7607 4.08301 15.8789 4.08301 16.0005C4.08301 16.1222 4.1238 16.2404 4.19887 16.3361C4.27393 16.4318 4.37893 16.4996 4.49708 16.5287C5.23808 16.715 5.95958 16.9588 6.66591 17.2621C8.46559 18.0282 10.102 19.1318 11.4867 20.5132C13.4157 22.4457 14.7919 24.8596 15.4723 27.5039C15.5014 27.6221 15.5692 27.7271 15.6649 27.8021C15.7606 27.8772 15.8788 27.918 16.0005 27.918C16.1221 27.918 16.2403 27.8772 16.336 27.8021C16.4317 27.7271 16.4995 27.6221 16.5286 27.5039C16.7149 26.7618 16.9587 26.0403 17.262 25.334C18.0281 23.5343 19.1316 21.8979 20.5131 20.5132C22.4458 18.5846 24.8596 17.2088 27.5038 16.5287C27.6213 16.4988 27.7254 16.4307 27.7998 16.3351C27.8741 16.2394 27.9145 16.1217 27.9145 16.0005C27.9145 15.8794 27.8741 15.7617 27.7998 15.666C27.7254 15.5704 27.6213 15.5023 27.5038 15.4724C26.7621 15.2858 26.0365 15.0402 25.3339 14.7379Z'
                    fill={`url(#${id3})`}
                />
            </g>
            <defs>
                <linearGradient id={id} x1='10.5832' y1='19.7917' x2='14.9166' y2='16' gradientUnits='userSpaceOnUse'>
                    <stop stopColor='#08B962' />
                    <stop offset='1' stopColor='#08B962' stopOpacity='0' />
                </linearGradient>
                <linearGradient
                    id={id1}
                    x1='11.6666'
                    y1='8.95834'
                    x2='15.4582'
                    y2='14.9167'
                    gradientUnits='userSpaceOnUse'
                >
                    <stop stopColor='#F94543' />
                    <stop offset='1' stopColor='#F94543' stopOpacity='0' />
                </linearGradient>
                <linearGradient id={id2} x1='6.79158' y1='17.625' x2='21.9582' y2='16' gradientUnits='userSpaceOnUse'>
                    <stop stopColor='#FABC12' />
                    <stop offset='0.46' stopColor='#FABC12' stopOpacity='0' />
                </linearGradient>
                <clipPath id={id2}>
                    <rect width='32' height='32' fill='white' />
                </clipPath>
            </defs>
        </svg>
    )
}
/**
 * @description Name: Gemini
 */
export const GeminiIcon = (props: Partial<IconProps>) => {
    return <Icon component={Gemini} {...props} />
}
